package com.luych.cloud.database.comparetor.dm;

import com.luych.cloud.database.comparetor.core.Column;

public class DmColumn implements Column {

    private String name;
    private String dataType;
    private String columnType;
    private Long charLength;
    private Long numericPrecision;
    private Long numericScale;
    private Boolean nullable;
    private String comment;

    public DmColumn() {
    }

    public DmColumn(String name, String dataType, String columnType, Long charLength, Long numericPrecision, Long numericScale, Boolean nullable, String comment) {
        this.name = name;
        this.dataType = dataType;
        this.columnType = columnType;
        this.charLength = charLength;
        this.numericPrecision = numericPrecision;
        this.numericScale = numericScale;
        this.nullable = nullable;
        this.comment = comment;
    }

    public void setName(String name) {
        this.name = name;
    }

    public void setDataType(String dataType) {
        this.dataType = dataType;
    }

    public void setCharLength(Long charLength) {
        this.charLength = charLength;
    }

    public void setNumericPrecision(Long numericPrecision) {
        this.numericPrecision = numericPrecision;
    }

    public void setNumericScale(Long numericScale) {
        this.numericScale = numericScale;
    }

    public void setColumnType(String columnType) {
        this.columnType = columnType;
    }

    public void setNullable(Boolean nullable) {
        this.nullable = nullable;
    }

    public void setComment(String comment) {
        this.comment = comment;
    }

    @Override
    public String getName() {
        return name;
    }

    @Override
    public String getDataType() {
        return dataType;
    }

    @Override
    public Long getCharLength() {
        return charLength;
    }

    @Override
    public Long getNumericPrecision() {
        return numericPrecision;
    }

    @Override
    public Long getNumericScale() {
        return numericScale;
    }

    @Override
    public String getColumnType() {
        return columnType;
    }

    @Override
    public Boolean isNullable() {
        return nullable;
    }

    @Override
    public String getComment() {
        return comment;
    }
}
